package com.xu.modules.service;

import com.xu.modules.entity.PersonalUserEntity;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xu.modules.service.bo.LoginBo;
import com.xu.modules.service.bo.PersonalUserRegisterBo;
import com.xu.modules.service.vo.PersonalUserVo;

import java.util.List;

/**
 * <p>
 * 个人用户 服务类
 * </p>
 *
 * @author xu
 * @since 2022-07-19
 */
public interface PersonalUserService extends IService<PersonalUserEntity> {

    /**
     * 通过邮箱查询用户数
     * @return 用户统计结果
     */
    Long countByEmail(String email);

    /**
     * 注册
     */
    String register(PersonalUserRegisterBo personalUserRegisterBo);

    /**
     * 获取用户信息
     */
    PersonalUserVo getUserInfo();

    /**
     * 登录
     */
    String login(LoginBo loginBo);

    /**
     * 查询所有用户
     */
    List<PersonalUserVo> listAll();
}
